<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../../../style.css" type="text/css" media="screen">
<link rel="stylesheet" href="../../../../print.css" type="text/css" media="print">
<meta content="ICommand,com.adobe.cairngorm.commands.ICommand,execute" name="keywords">
<title>com.adobe.cairngorm.commands.ICommand</title>
</head>
<body>
<script type="text/javascript" language="javascript" src="../../../../asdoc.js"></script><script type="text/javascript" language="javascript" src="../../../../cookies.js"></script><script type="text/javascript" language="javascript">
<!--
				asdocTitle = 'ICommand - Adobe Consulting EMEA - Cairngorm';
				var baseRef = '../../../../';
				window.onload = configPage;
			--></script>
<table style="display:none" id="titleTable" cellspacing="0" cellpadding="0" class="titleTable">
<tr>
<td align="left" class="titleTableTitle">API Documentation</td><td align="right" class="titleTableTopNav"><a onclick="loadClassListFrame('../../../../all-classes.html')" href="../../../../package-summary.html">All&nbsp;Packages</a>&nbsp;|&nbsp;<a onclick="loadClassListFrame('../../../../all-classes.html')" href="../../../../class-summary.html">All&nbsp;Classes</a>&nbsp;|&nbsp;<a onclick="loadClassListFrame('../../../../index-list.html')" href="../../../../all-index-A.html">Index</a>&nbsp;|&nbsp;<a href="../../../../index.html?com/adobe/cairngorm/commands/ICommand.html&amp;com/adobe/cairngorm/commands/class-list.html" id="framesLink1">Frames</a><a onclick="parent.location=document.location" href="" style="display:none" id="noFramesLink1">No&nbsp;Frames</a></td><td rowspan="3" align="right" class="titleTableLogo"><img alt="Adobe Logo" title="Adobe Logo" class="logoImage" src="../../../../images/logo.jpg"></td>
</tr>
<tr class="titleTableRow2">
<td align="left" id="subTitle" class="titleTableSubTitle">Interface&nbsp;ICommand</td><td align="right" id="subNav" class="titleTableSubNav"><a href="#methodSummary">Methods</a></td>
</tr>
<tr class="titleTableRow3">
<td colspan="2">&nbsp;</td>
</tr>
</table>
<script type="text/javascript" language="javascript">
<!--
if (!isEclipse() || window.name != ECLIPSE_FRAME_NAME) {titleBar_setSubTitle("Interface ICommand"); titleBar_setSubNav(false,false,false,false,false,false,true,false,false,false,false,false,false,false);}
--></script>
<div class="MainContent">
<table cellspacing="0" cellpadding="0" class="classHeaderTable">
<tr>
<td class="classHeaderTableLabel">Package</td><td><a onclick="javascript:loadClassListFrame('class-list.html')" href="package-detail.html">com.adobe.cairngorm.commands</a></td>
</tr>
<tr>
<td class="classHeaderTableLabel">Interface</td><td class="classSignature">public interface ICommand</td>
</tr>
<tr>
<td class="classHeaderTableLabel">Subinterfaces</td><td><a href="../commands/Command.html">Command</a></td>
</tr>
<tr>
<td class="classHeaderTableLabel">Implementors</td><td><a href="../commands/SequenceCommand.html">SequenceCommand</a></td>
</tr>
</table>
<p></p>
    
    The ICommand interface enforces the contract between the Front
    Controller and concrete command classes in your application.
    
    <p>In a Cairngorm application, the application specific Front Controller
    will listen for events of interest, dispatching control to appropriate
    command classes according to the type of the event broadcast.</p>
        <p>
    When an event is broadcasted by the Front Controller, it will
    lookup its list of registered commands, to find the command capable
    of carrying out the appropriate work in response to the user gesture
    that has caused the event.
    </p>
        <p>
    When the event that an command is registered against is broadcast,
    the Front Controller class will invoke the command by calling its
    execute() method, which can be considered the entry point to a
    command.
    </p>
        <p></p>
<p>
<span class="classHeaderTableLabel">See also</span>
</p>
<div class="seeAlso">
<a href="../control/FrontController.html" target="">com.adobe.cairngorm.control.FrontController</a>
<br>
<a href="../control/CairngormEventDispatcher.html" target="">com.adobe.cairngorm.control.CairngormEventDispatcher</a>
</div>
<br>
<hr>
</div>
<a name="methodSummary"></a>
<div class="summarySection">
<div class="summaryTableTitle">Public Methods</div>
<table id="summaryTableMethod" class="summaryTable " cellpadding="3" cellspacing="0">
<tr>
<th>&nbsp;</th><th colspan="2">Method</th><th class="summaryTableOwnerCol">Defined&nbsp;by</th>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#execute()">execute</a>(event:<a href="../control/CairngormEvent.html">CairngormEvent</a>):void</div>
<div class="summaryTableDescription"> Called by the Front Controller to execute the command.</div>
</td><td class="summaryTableOwnerCol">ICommand</td>
</tr>
</table>
</div>
<script type="text/javascript" language="javascript">
<!--
showHideInherited();
--></script>
<div class="MainContent">
<a name="methodDetail"></a>
<div class="detailSectionHeader">Method detail</div>
<a name="execute()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">execute</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td>
</tr>
</table>
<div class="detailBody">
<code>public function execute(event:<a href="../control/CairngormEvent.html">CairngormEvent</a>):void</code><p> Called by the Front Controller to execute the command.
       
       </p><p>The single entry point into an ICommand, the 
       execute() method is called by the Front Controller when a 
       user-gesture indicates that the user wishes to perform a 
       task for which a particularconcrete command class has been 
       provided.</p>
              <span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">event</span>:<a href="../control/CairngormEvent.html">CairngormEvent</a></code> &mdash; When the Front Controller receives notification
       of a user gesture, the Event that it receives contains both the
       type of the event (indicating which command should handle the
       work) but also any data associated with the event.
              <p>
       For instance, if a "login" event has been broadcasted,
       to which the controller has registered the LoginCommand,
       the event may also contain some associated data, such as
       the number of prior attempts at login have been made
       already. In this case, the event.type would be set to
       "login" while other properties define in the custom login 
       event object would contain (by way of example)
       an attribute such as attemptedLogins. 
       </p>
              <p>
       By careful use of custom event objects, the same
       concrete command class is capable of responding in slightly
       different ways to similar user gesture requests.
       </p>
       </td>
</tr>
</table>
</div>
<br>
<br>
<hr>
<br>
<p></p>
<center class="copyright"> 
</center>
</div>
</body>
</html>
<!-- -->
